package com.ck.web.common.spring;

import com.ck.web.common.IBeanNames;

/**
 * 定义Spring的配置文件中配置的Bean名称，使用静态字符串<br/>
 * TODO 若修改Spring的配置文件，则需要同步此类<br/>
 * <p>
 * Created by ChengK on 2017/4/25 0025.
 */
public class SpringBeanNames implements IBeanNames {
    /**
     * Spring的Bean获取工具
     */
    public static final String SpringContextHolder = "common_SpringContextHolder";

    // *-------------------------------------------------------------------------------------------//
    // applicationContext.xml 配置文件的Bean名称
    // -------------------------------------------------------------------------------------------//
    /**
     * 数据库连接池Bean名称
     */
    public static final String DataSource = "dataSource";
    /**
     * Session工厂Bean名称
     */
    public static final String SqlSessionFactory = "sqlSessionFactory";
    /**
     * 事务管理器
     */
    public static final String TransactionManager = "transactionManager";

    // *-------------------------------------------------------------------------------------------//
    // spring-context-base.xml 配置文件的Bean名称
    // -------------------------------------------------------------------------------------------//
    /**
     * shiro核心过滤器
     */
    public static final String ShiroFilter = "shiroFilter";
    /**
     * shiro安全管理器
     */
    public static final String SecurityManager = "securityManager";
    /**
     * shiro自定义realm
     */
    public static final String UserLoginRealm = "userLoginRealm";
    /**
     * Realm的凭证匹配器,用于指定用户名密码的加密算法
     */
    public static final String CredentialsMatcher = "credentialsMatcher";
    /**
     * 基于form的身份验证过滤器
     */
    public static final String LoginFormAuthenticationFilter = "loginFormAuthenticationFilter";
    /**
     * shiro生命周期处理器
     */
    public static final String LifecycleBeanPostProcessor = "lifecycleBeanPostProcessor";
    /**
     * shiro ehcache配置
     */
    public static final String CacheManager = "cacheManager";
}
